package com.shujia.core

import org.apache.spark.{SparkConf, SparkContext}
import org.apache.spark.rdd.RDD

object Demo07SortBy {
  def main(args: Array[String]): Unit = {
    // 创建Spark Context
    val conf: SparkConf = new SparkConf()
    conf.setAppName("Demo07SortBy")
    conf.setMaster("local")

    val sc: SparkContext = new SparkContext(conf)

    // 构建RDD 通过Scala中的集合构建
    val intRDD: RDD[Int] = sc.parallelize(List(1, 3, 7, 6, 4, 5, 8, 2, 9))

    // 对RDD中的数据进行降序排列
    /**
     * sortBy 转换算子
     * 指定一个字段进行排序
     * 可以通过ascending参数控制升序/降序排列
     *
     */
    intRDD
      .sortBy(i => i, ascending = false)
      .foreach(println)

    intRDD
      .sortBy(i => -i)
      .foreach(println)

  }

}
